package treeview;

import search.Visitor;

import java.awt.*;

/**
 * Created by Pavel Nikolaev
 */
public interface NodeView {

    public int countChildren();
    public NodeView getChild(int index);

    public void setLocation(int x, int y);
    public void paint(Graphics g);

    public boolean intersect(int x, int y);

    public void fitIntoWidth(Graphics g, int widthToFitInto);
    public void drawAt(Graphics g, int x, int y);

    public int getWidth();
    public int getHeight();
    public int getDescent();
    public int getAscent();

    public void setWidth(int width);
    public void setHeight(int height);
    public void setDescent(int descent);
    public void setAscent(int ascent);

    public void print(int level);

    public void accept(Visitor visitor);
}
